package com.bicon.botu.account.service;

import com.baomidou.mybatisplus.service.IService;
import com.bicon.botu.account.dto.RoleDto;
import com.bicon.botu.account.entity.AccountRole;
import com.bicon.botu.core.base.common.entity.BaseResult;

import java.util.List;

/**
 * @auther 裴志鹏
 * @date 2017/11/30 10:41
 */
public interface IAccountRoleService extends IService<AccountRole> {

    /**
     * 增加账号角色关联
     *
     * @param accountId 账号id
     * @param roleIds   角色Id,可多个一起传。英文逗号隔开“,”
     * @param type      账户类型：0：前台账户，1：后台账户
     * @return
     */
    BaseResult saveAccountRoleIds(String accountId, String[] roleIds, String type);


    /**
     * 删除账号角色关联
     *
     * @param accountId 账号id
     * @param type      账户类型：0：前台账户，1：后台账户
     * @return
     */
    BaseResult deleteAccountRoleByAccountId(String accountId, String type);

    /**
     * 查询当前账号下的角色
     *
     * @param accountId 账号Id
     * @param type      账户类型：0：前台账户，1：后台账户
     * @return
     */
    List<RoleDto> selectRolesByAccountId(String accountId, String type);

    /**
     * 添加账户角色
     *
     * @param accountId 账户id
     * @param code      角色code
     * @return
     */
    BaseResult addAccountRole(String accountId, String code);

    /**
     * 删除账号角色关联
     *
     * @param accountId 账号id
     * @param type      账户类型：0：前台账户，1：后台账户
     * @param code      角色code
     * @return
     */
    BaseResult deleteAccountRole(String accountId, String type, String code);
}
